package com.vizhuo.utils.term;

import java.util.ArrayList;
import java.util.List;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;


import com.vizhuo.utils.ListUtil;

/**
 * term工具类，主要用于键值转换
 * 
 * @author 刘大年
 * 
 */
public class TermManager {
    private static Logger log = LoggerFactory.getLogger(TermManager.class);

    /**
     * 根据对象的value值获得对应的label值，由于主要用于页面显示，所以当未找到对应数据时返回空字符串""，而非null
     * 
     * @param termList
     * @param value
     * @return
     */
    public static String getlabel4Value(List<Term> termList, String value) {
        // log.debug("getlabel4Value:");
        // log.debug("value = [" + value + "]， list内容：" + termList);

        if (ListUtil.isNotEmpty(termList)) {
            for (Term term : termList) {
                String termValue = term.getValue();
                if (termValue.equals(value)) {
                    return term.getLabel();
                }
            }
        }
        return "";
    }

    /**
     * 根据对象的value值获得对应的label值，由于主要用于页面显示，所以当未找到对应数据时返回空字符串""，而非null
     * 
     * @param termList
     * @param value
     * @return
     */
    public static String getlabel4Value(List<Term> termList, Integer value) {
        if (value == null) {
            return "";
        }
        return getlabel4Value(termList, value.toString());
    }

    /**
     * 根据对象的lable值获得对应的value值，由于主要用于页面显示，所以当未找到对应数据时返回空，而非null
     * 
     * @param termList
     * @param lable
     * @return
     */
    public static String getValue2label(List<Term> termList, String label) {
        // log.debug("getValue2Label:");
        // log.debug("value = [" + label + "]， list内容：" + termList);

        if (ListUtil.isNotEmpty(termList)) {
            for (Term term : termList) {
                String termLabel = term.getLabel();
                if (termLabel.equals(label)) {
                    return term.getValue();
                }
            }
        }
        return "";
    }


}
